from django.db import models
# 商品分类数据表
class Category(models.Model):
    # 设置外键关联
    parent=models.ForeignKey('self',on_delete=models.SET_NULL,null=True,blank=True,verbose_name='父级分类')
    name=models.CharField(max_length=20,unique=True,null=False,blank=False,verbose_name='分类名称')
    level=models.PositiveSmallIntegerField(verbose_name='分类层级')
    class Meta:
        db_table='category'
        ordering=['id']

#   商品数据表模型类
class Goods(models.Model):
    name=models.CharField(max_length=200,unique=True,null=False,blank=False,verbose_name='商品名称')
    cover=models.ImageField(upload_to='goods',verbose_name='商品封面')
    cate=models.ForeignKey(Category,null=True,on_delete=models.SET_NULL,verbose_name='商品分类')
    price=models.DecimalField(max_digits=10,decimal_places=2,verbose_name='商品价格')
    sale_num=models.IntegerField(default=0,verbose_name='商品销量')
    class Meta:
        db_table='goods'
        ordering=['id']

# 商品规格属性表
class Specs(models.Model):
    # 设置关联商品
    goods=models.ForeignKey(Goods,on_delete=models.CASCADE,verbose_name='商品id')
    specs_name=models.CharField(max_length=30,verbose_name='规格属性名')
    class Meta:
        db_table='specs'

# 商品规格属性值
class SpecsValue(models.Model):
    # 设置外键关联
    specs=models.ForeignKey(Specs,on_delete=models.CASCADE,verbose_name='规格属性')
    specs_value=models.CharField(max_length=30,unique=True,verbose_name='规格属性值')
    class Meta:
        db_table='specs_value'